#ifndef HWOGL_MISC_H
#define HWOGL_MISC_H
/**
\file Misc.h
\author John Doe \n
   Copyright 2006.  

\brief Misc.h contains various definitions and declarations for the Hello_World-OpenGL 
project that do not yet merit being put in their own separate .h/.cpp files.

*/

/*******************************************************************************
    Includes	
*******************************************************************************/
//#include <MyLibrary/MyLibrary_exports.h>

/*******************************************************************************
    Macros
*******************************************************************************/

/** 
\author Zachary Wartell
\brief gltCheck checks for any OpenGL errors and aborts if they occur.

gltCheck only generates code during a debug compilation.

*/
#ifndef NDEBUG
#define gltCheck() \
    do  { \
    GLenum err_check = glGetError(); \
    if (err_check != GL_NO_ERROR) \
	    {\
	    std::cerr << std::hex << err_check << std::endl; \
	    assert (err_check == GL_NO_ERROR); \
	    }\
	} while(0)
#else
// generate no code under non-debug compilations
#define gltCheck()
#endif

/*******************************************************************************
    Data Types 
*******************************************************************************/
/* NONE */
/*******************************************************************************
    Function Prototypes
*******************************************************************************/
/* NONE */

#ifdef __cplusplus
extern "C" {
#endif
#ifdef __cplusplus
}
#endif

/*******************************************************************************
    Global Variables
*******************************************************************************/
/** const float value of PI */
extern const float PI_f;
/** const double value of PI */
extern const double PI_d;
#endif
